Clear["Global`*"]
(* This command wipes everything out from the current session of Mathematica. *)

CFT and gravity, solutions week 8

The Casimir equation (questions a, c, d, e)

Scalar product and differentiation: copied from week 3, but now in d+2 dimensions!

Define (Subscript[g, μν]), a scalar product · and rules for contractions

Attributes[CenterDot]={Orderless};
(a_+b_)·c_:=a·c+b·c
a_·(α_ b_):=α (a·b)/;NumberQ[α]
Attributes[g]=Orderless;
dot:=((Expand[#]//. {
z_[μ_] y_[μ_]:>z·y,((z_[μ_])^2):>z·z,g[μ_,ν_]z_[ν_]:>z[μ],g[μ_,α_]g[α_,ν_]:> g[μ,ν] ,((g[μ_,ν_])^2):>d+2,g[μ_,μ_]:>d+2})//Simplify)&

Warning: it does not handle mistakes in the repeated indices: see first example below. So please contract indices properly in the following.

x[μ]x[α] y[μ]x[μ]//dot
x[μ]x[α] y[μ]x[α]//dot
x[μ](x[μ]+y[μ])//dot
x[μ](x[ν]+y[ν])g[μ,ν]//dot
g[μ,ν]g[ν,μ]//dot

Define (∂_μ)

der[x_][μ_][expr_] takes three arguments: the point x, the direction μ and the expression to be derived. We use the command SeriesCoefficient that knows already about linearity and Leibnitz rule:

der[x_][μ_][A_]:=(A/.{
x[α_]:> x[α]+ϵ g[μ,α],x·x:> x·x+2ϵ x[μ],x·y_:> x·y+ϵ y[μ]})//SeriesCoefficient[#,{ϵ,0,1}]&

der[x][μ][x·x]
der[x][μ][x·y]
der[x][μ][f[x·y]]

The Casimir equation

Define the action of the Lorentz generators

ClearAll[j]

j[P_][a_,b_]:=(P[a]der[P][b][#]-P[b]der[P][a][#])&

j[P1][A,B][P1·P2]
j[P1][A,B][P1·P2]+j[P2][A,B][P1·P2]

Apply the Casimir to the 4 point function

(1/((((-2P1·P2))^((Δ1+Δ2)/2))(((-2P3·P4))^((Δ3+Δ4)/2))))(((((P2·P4)/(P1·P4))))^((Δ1-Δ2)/2))(((((P1·P4)/(P1·P3))))^((Δ3-Δ4)/2))f[((P1·P2 P3·P4)/(P1·P3 P2·P4)),((P1·P4 P2·P3)/(P1·P3 P2·P4))];
j[P1][a,b][%]+j[P2][a,b][%];
((-1)/2)(j[P1][a,b][%]+j[P2][a,b][%])/.{((P1·P2 P3·P4)/(P1·P3 P2·P4))->u,((P1·P4 P2·P3)/(P1·P3 P2·P4))->v}//dot;
%((( (1/((((-2P1·P2))^((Δ1+Δ2)/2))(((-2P3·P4))^((Δ3+Δ4)/2))))(((((P2·P4)/(P1·P4))))^((Δ1-Δ2)/2))(((((P1·P4)/(P1·P3))))^((Δ3-Δ4)/2))))^(-1))//Expand//Collect[#,{f[u,v],Derivative[a_,b_][f][u,v]},(PowerExpand[Simplify[#]]&)]&//List@@#&;
%/.{P1·P1->0,P2·P2->0,P3·P3->0,P4·P4->0}/.{Δ2->2 a+Δ1,Δ3->2 b+Δ4}/.{P1·P2->u ((P1·P3 P2·P4)/(P3·P4)),P1·P4->v ((P1·P3 P2·P4)/(P2·P3))}//Expand//Simplify;
casimir=(1/2)Plus@@%

Test that it matches the predicted form

(1-u-v)D[v D[#,v]+(a+b)#,v]+u D[2 u D[#,u]-d #,u]-(1+u-v)((u D[#1,u]+v D[#1,v]+a #1)&)[(u D[#,u]+v D[#,v]+b #)]&[f[u,v]]
%-casimir//Expand

Change of variables

Implement 
u=z zb, 
v=(1-z)(1-zb)

Invert the relation. The two solutions correspond to exchanging z and zb, which is a symmetry of the Casimir equation, so we can pick one solution at random.

Solve[u==z zb&&v==(1-z)(1-zb),{z,zb}]
zinv[u_,v_]=(z/.%[[1]])
zbinv[u_,v_]=(zb/.%%[[1]])

Notice this syntax:

D[f[u,v],u]/.f->(h[z[#1,#2],zb[#1,#2]]&)

Let’s apply it.

casimirz=casimir/.f->(h[zinv[#1,#2],zbinv[#1,#2]]&)/.{(1/2) (1+u-(Sqrt[-4 u+(((1+u-v))^2)])-v)->z,(1/2) (1+u+(Sqrt[-4 u+(((1+u-v))^2)])-v)->zb}/.(((-4 u+(((1+u-v))^2)))^(a_))->(((1+u-v-2 z))^(2 a))/.{u->z zb,v->(1-z)(1-zb)}//Simplify

Check that it matches the predicted form

dz=(z^2)(1-z)D[#,{z,2}]-(a+b+1)(z^2)D[#,z]-a b z #&;
dzb=(zb^2)(1-zb)D[#,{zb,2}]-(a+b+1)(zb^2)D[#,zb]-a b zb #&;
dmixed=(d-2)((z zb)/(z-zb))((1-z)D[#,z]-(1-zb)D[#,zb])&;

caszsimp=dz[h[z,zb]]+dzb[h[z,zb]]+dmixed[h[z,zb]]
%-casimirz//Simplify

Solution in d=2

ClearAll[ka,kappaz,kappazb]

Check the boundary conditions at small r=|z|.
We name w=(e^(i θ))

((kappaz[Δ+l] kappazb[Δ-l]+kappazb[Δ+l] kappaz[Δ-l])/((2^l)(1+KroneckerDelta[l,0])));
%/.{kappaz[β_]->(((r w))^(β/2)),kappazb[β_]->((((r/w)))^(β/2))}//PowerExpand//Simplify

Verify that the combination above solves the Casimir equation if the function kappa is eigenfunction of dz with eigenvalue β/2(β/2-1)

kappaz[Δ+l] kappazb[Δ-l]+kappazb[Δ+l] kappaz[Δ-l]
(%/.kappaz[β_]->β/2(β/2-1) kappaz[β])+(%/.kappazb[β_]->β/2(β/2-1) kappazb[β])//Simplify

Find the solution with the right boundary condition (dz can be recognized to be the Hypergeometric equation, but we let mathematica do this):

sol2d=DSolve[dz[ka[z]]==β/2(β/2-1)ka[z],ka,z]
Series[(ka[z]/.sol2d[[1]]),{z,0,0}] (* We need to cancel the growing power: C[1]->0, and to match the coefficient of the right boundary behavior: C[2]->(I^(-β)) *)
%/.{C[1]->0,C[2]->(1/(I^β))}//Normal
ka[z]/.sol2d[[1]]/.{C[1]->0,C[2]->(1/(I^β))}

Solution in d=4

k[β_][z_]:=(z^(β/2))Hypergeometric2F1[β/2+a,β/2+b,β,z]

g4d[z_,zb_]:=((z zb)/((2^l)(z-zb)))(k[Δ+l][z]k[Δ-l-2][zb]-k[Δ+l][zb]k[Δ-l-2][z])

pref[z_,zb_]:=((z zb)/((2^l)(z-zb)))

Boundary conditions:

Series[g4d[r w,(r/w)],{r,0,2}]//PowerExpand//Normal//Simplify
(1/(2^l))(r^Δ) (((w^(l+1))-(w^(-l-1)))/(w-(w^(-1))))/%//Simplify

Casimir equation.

cdl=(Δ(Δ-4)+l(l+2));

You could content yourself of checking that the equation is satidfied in a power expansion in z and zb up to some order, or plug in some random values and check the solution numerically. Let’s instead check it exactly.

The brute force scenario is a bit problematic, because derivatives of hypers are hypers with shifted arguments. Mathematica will have trouble simplifying the whole thing to zero:

caszsimp-(1/2)(Δ(Δ-4)+l(l+2))h[z,zb]/.h->(g4d[#1,#2]&)/.d->4;
aux=%/.{Hypergeometric2F1[a+((l+Δ)/2),b+((l+Δ)/2),l+Δ,z]->kappaz[1],Hypergeometric2F1[a+((l+Δ)/2),b+((l+Δ)/2),l+Δ,zb]->kappazb[1],Hypergeometric2F1[a+(1/2) (-2-l+Δ),b+(1/2) (-2-l+Δ),-2-l+Δ,z]->kappaz[2],Hypergeometric2F1[a+(1/2) (-2-l+Δ),b+(1/2) (-2-l+Δ),-2-l+Δ,zb] ->kappazb[2] }//Collect[#,{kappaz[i_],kappazb[i_]},PowerExpand[Simplify[#]]&]&

The output contains some hypers with shifted arguments. Let’s see which shifts appear:

aux//Cases[#,Hypergeometric2F1[aa_,bb_,cc_,d_]->{aa,bb,cc},∞]&//DeleteDuplicates

These are shifts of all arguments by 1 or by 2. One could use contiguity equations (see Abramowitz-Stegun or the DLMF) to undo the shifts.

There is also a useful formula which gives the derivative of a hyper in terms of hypers with at most one shift. It is eq. 15.5.2 on the DLMF (try Googling digital library of mathematical functions):

   c (1-z) (d/dz)  F(a,b,c,z) = (c-a)(c-b) F(a,b,c+1,z)+c (a+b-c) F(a,b,c,z) 
 
 We apply the Casimir by replacing this equation, and also using the fact that the function k is an eigenfunction of dz and dzb:

kappa[β_][z_]:=(z^(β/2))f21[a+β/2,b+β/2,β,z]

dmixed4=dmixed[pref[z,zb](kappa[Δ+l][z]kappa[Δ-l-2][zb]-kappa[Δ+l][zb]kappa[Δ-l-2][z])]/.{Derivative[0,0,0,1][f21][aa_,bb_,cc_,zz_]->(cc-aa)(((cc-bb))/(cc (1-zz)))Hypergeometric2F1[aa,bb,cc+1,zz]+(((aa+bb-cc))/(1-zz))Hypergeometric2F1[aa,bb,cc,zz],f21[aa_,bb_,cc_,zz_]->Hypergeometric2F1[aa,bb,cc,zz]}//Collect[#,Hypergeometric2F1[aa_,bb_,cc_,zz_],Simplify]&;

dz4=dz[pref[z,zb](kappa1[Δ+l][z]kappa1[Δ-l-2][zb]-kappa1[Δ+l][zb]kappa1[Δ-l-2][z])]/.D[kappa1[aa_][z],{z,2}]-> (1/((z^2)(1-z)))(((aa/2)((aa/2)-1)+a b z )kappa1[aa][z]+(a+b+1)(z^2)D[kappa1[aa][z],z])/.D[kappa1[aa_][z],z]->D[(z^(aa/2))f21[a+aa/2,b+aa/2,aa,z],z]/.{Derivative[0,0,0,1][f21][aa_,bb_,cc_,zz_]->(cc-aa)(((cc-bb))/(cc (1-zz)))Hypergeometric2F1[aa,bb,cc+1,zz]+(((aa+bb-cc))/(1-zz))Hypergeometric2F1[aa,bb,cc,zz],f21[aa_,bb_,cc_,zz_]->Hypergeometric2F1[aa,bb,cc,zz],kappa1[aa_][zz_]->k[aa][zz]};
dzb4=dz4/.{z->zb,zb->z};

Now the action of the Casimir is expressed in terms of the minimal basis of hypers, which has only one shift in one argument. The Casimir equation must be verified without using any other property of the hypergeometric functions. Indeed:

dz4+dzb4+dmixed4-1/2cdl g4d[z,zb]/.d->4//Collect[#,Hypergeometric2F1[aa_,bb_,cc_,zz_],Simplify]&